package peace.transport.xmlrpc
{
public class XmlrpcRequest
{
	/**
	 * Имя удаленного метода на сервере 
	 */	
	public var methodName:String;
	/**
	 * Параметры запроса 
	 */	
	public var parameters:Array = [];
	
	/**
	 * @return собираем тело запроса в xml-rpc формате 
	 */	
	public function get xml ():XML
	{
		var xml:XML = 
			<methodCall>
			  <methodName>{methodName}</methodName>
			  <params/>
			</methodCall>

		for each (var p:* in parameters)
		{
			xml.params.* += 
			<param>
				<value>{Xmlrpc.encodeValue(p)}</value>
			</param>
		}	
			
		return xml;
		
	}
	
	public function XmlrpcRequest (methodName:String, parameters:Array=null)
	{
		this.methodName = methodName;
		if (parameters)
		{
			this.parameters = parameters;
		}
	}
	
}
}